﻿using System;
using System.Collections.Generic;
using System.Data;
using System.IO;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;


namespace HenryNguyen.GNCMedia.ESchool.WebUI.UserControls
{
    public partial class ContactsImport : System.Web.UI.UserControl
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            //if (!Page.IsPostBack &&
            //    Visible)
            //{
            //    FillContactGroups();
            //    ucNotificationDialog.Hide();
            //}
        }

        protected void btnSubmit_Click(object sender, EventArgs e)
        {
            //if (!fuExcel.HasFile)
            //{
            //    ucNotificationDialog.MessageContent = "Tệp tin danh bạ không thể bỏ trống!";
            //    ucNotificationDialog.MessageType = 0;
            //    ucNotificationDialog.Show();
            //    return;
            //}

            //if (!Path.GetExtension(fuExcel.FileName).ToLower().Equals(".xls"))
            //{
            //    ucNotificationDialog.MessageContent = "Tệp tin danh bạ phải là tệp tin excel 2003!";
            //    ucNotificationDialog.MessageType = 0;
            //    ucNotificationDialog.Show();
            //    return;
            //}

            //string fileName = Server.MapPath("contactfiles") + "/" + DateTime.Now.ToString("yyyyMMddHHmmssfff") + "_" + Convert.ToString(Session["GNCMedia.ESchool.CustomerID"]) + fuExcel.FileName;

            //try { fuExcel.SaveAs(fileName); }
            //catch (Exception ex)
            //{
            //    ucNotificationDialog.MessageContent = "Hệ thống gặp sự cố trong quá trình lưu trữ tệp tin!<br/>Liên hệ GNCMedia để được hỗ trợ.";
            //    ucNotificationDialog.MessageType = 0;
            //    ucNotificationDialog.Show();
            //    Response.Write(ex.Message);
            //    return;
            //}

            //ExcelDataReader excelDataReader = null;
            //DataSet dsData = null;

            //try
            //{
            //    using (FileStream fs = new FileStream(fileName, FileMode.Open, FileAccess.Read, FileShare.ReadWrite))
            //    {
            //        excelDataReader = new ExcelDataReader(fs);
            //        dsData = excelDataReader.WorkbookData;
            //    }

            //    if (dsData.Tables.Count == 0)
            //    {
            //        ucNotificationDialog.MessageContent = "Không tìm thấy dữ liệu trong tệp tin đăng tải!<br/>Vui lòng kiểm tra lại.";
            //        ucNotificationDialog.MessageType = 0;
            //        ucNotificationDialog.Show();
            //        return;
            //    }

            //    if (dsData.Tables[0].Rows.Count == 0)
            //    {
            //        ucNotificationDialog.MessageContent = "Không tìm thấy dữ liệu trong tệp tin đăng tải!<br/>Vui lòng kiểm tra lại.";
            //        ucNotificationDialog.MessageType = 0;
            //        ucNotificationDialog.Show();
            //        return;
            //    }
            //}
            //catch (Exception ex)
            //{
            //    ucNotificationDialog.MessageContent = "Hệ thống gặp sự cố trong quá trình xử lý tệp tin!<br/>Liên hệ GNCMedia để được hỗ trợ.";
            //    ucNotificationDialog.MessageType = 0;
            //    ucNotificationDialog.Show();
            //    Response.Write(ex.Message);
            //    return;
            //}
            //finally
            //{ excelDataReader = null; }

            //ContactGroupMembersBL vContactGroupMembersBL = new ContactGroupMembersBL();
            //ContactGroupMembersDO vContactGroupMembersDO = null;
            //ContactsBL vContactsBL = new ContactsBL();
            //ContactsDO vContactsDO = null;
            //int result=0, totalRows = dsData.Tables[0].Rows.Count, totalSuccess = 0, totalError = 0;            

            //for (int i = 0; i < dsData.Tables[0].Rows.Count; i++)
            //{
            //    vContactsDO = new ContactsDO();
            //    result = 0;

            //    try
            //    {                    
            //        vContactsDO.FullName = Convert.ToString(dsData.Tables[0].Rows[i][0]);
            //        vContactsDO.PhoneNumber = Convert.ToString(dsData.Tables[0].Rows[i][1]);
            //        vContactsDO.CustomerID = Convert.ToInt32(Session["GNCMedia.ESchool.CustomerID"]);
            //        vContactsDO.SchoolID = Convert.ToInt32(Session["GNCMedia.ESchool.SchoolID"]);

            //        result = vContactsBL.Save(vContactsDO);

            //        if (result > 0)
            //        {
            //            totalSuccess++;
            //            if (Convert.ToInt32(ddlContactGroups.SelectedItem.Value) > 0)
            //            {
            //                vContactGroupMembersDO = new ContactGroupMembersDO();
            //                vContactGroupMembersDO.GroupID = Convert.ToInt32(ddlContactGroups.SelectedItem.Value);
            //                vContactGroupMembersDO.ContactID = result;
            //                vContactGroupMembersBL.Add(vContactGroupMembersDO);
            //            }
            //        }
            //        else { totalError++; }
            //    }
            //    catch (Exception ex) { totalError++; }
            //    finally { vContactsDO = null; }
            //}

            //vContactsBL.Dispose();
            //vContactsBL = null;
            //vContactsDO = null;

            //ucNotificationDialog.MessageContent = string.Format("Thêm danh bạ từ tệp tin excel hoàn tất!<br/>Tổng số bản ghi: {0}<br/>Thành công: {1}<br/>Thất bại: {2}",
            //    totalRows, totalSuccess, totalError);
            //ucNotificationDialog.MessageType = 1;
            //ucNotificationDialog.Show();            
        }

        protected void btnCancel_Click(object sender, EventArgs e)
        {
            Response.Redirect("~/Contacts.aspx");
        }

        private void FillContactGroups()
        {
            //ddlContactGroups.Items.Clear();
            //ddlContactGroups.Items.Add(new ListItem("--Chọn nhóm danh bạ--", "0"));

            //ContactGroupsBL vContactGroupsBL = new ContactGroupsBL();
            //List<ContactGroupsDO> vContactGroupsDOCollection = null;

            //try
            //{
            //    vContactGroupsDOCollection = vContactGroupsBL.SelectAll(Convert.ToInt32(Session["GNCMedia.Edu.EContact.CustomerID"]), Convert.ToInt32(Session["GNCMedia.Edu.EContact.SchoolID"]));

            //    if (vContactGroupsDOCollection != null)
            //    {
            //        if (vContactGroupsDOCollection.Count > 0)
            //        {
            //            for (int i = 0; i < vContactGroupsDOCollection.Count; i++)
            //            { ddlContactGroups.Items.Add(new ListItem(vContactGroupsDOCollection[i].GroupName, vContactGroupsDOCollection[i].GroupID.ToString())); }
            //        }
            //    }
            //}
            //catch (Exception ex) { Response.Write(ex.Message); }
            //finally
            //{
            //    vContactGroupsBL.Dispose();
            //    vContactGroupsBL = null;
            //    vContactGroupsDOCollection = null;
            //}
        }
    }
}